Methods and systems for determining and assigning a primary point-of-interest type for a point-of-interest

ABSTRACT

An exemplary point-of-interest identification system accesses data for a point-of-interest. The system generates a plurality of scores for the point-of-interest based on one or more of a plurality of predefined features found in the data for the point-of-interest and on a machine learning model. The system selects, based on the plurality of scores, a primary point-of-interest type for the point-of-interest. The system includes the selected primary point-of-interest in a dataset for the point-of-interest. Corresponding methods and systems are also disclosed.

BACKGROUND INFORMATION

Computer-implemented mapping service systems may provide arepresentation of a point-of-interest on a user interface map. Therepresentation may be text and/or any type of graphic that may be based,at least in part, on data found in a dataset for the point-of-interest.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate various embodiments and are a partof the specification. The illustrated embodiments are merely examplesand do not limit the scope of the disclosure. Throughout the drawings,identical or similar reference numbers designate identical or similarelements.

FIG. 1 illustrates a point-of-interest identification system accordingto principles described herein.

FIG. 2 illustrates an exemplary configuration for training a computerscoring model according to principles described herein.

FIG. 3 illustrates an exemplary configuration for determining,assigning, and utilizing a primary point-of-interest type for apoint-of-interest according to principles described herein.

FIG. 4 illustrates exemplary inputs and outputs of a trained neuralnetwork according to principles described herein.

FIG. 5 shows an exemplary user interface map illustrating icons forpoints-of-interest according to principles described herein.

FIG. 6 illustrates an exemplary method for determining and assigning aprimary point-of-interest type for a point-of-interest according toprinciples described herein.

FIG. 7 illustrates an exemplary computing device according to principlesdescribed herein.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Methods and systems for determining and assigning a primarypoint-of-interest type for a point-of-interest are described herein. Inan example, a point-of-interest identification system may access datafor a point-of-interest and determine whether one or more of a pluralityof predefined features are found in the data for the point-of-interest.The point-of-interest identification system may generate a plurality ofscores for the point-of-interest based on one or more of the pluralityof predefined features found in the data for the point-of-interest andon a computer learning model. The point-of-interest identificationsystem may select, based on the plurality of scores, a primarypoint-of-interest type for the point-of-interest. The point-of-interestidentification system may include the selected primary point-of-interestin a dataset for the point of interest and store the dataset in apoints-of-interest data store.

Methods and systems described herein for determining and assigning aprimary point-of-interest type for a point-of-interest may providevarious benefits, which may include one or more advantages overpoint-of-interest identification technologies used in conventionalcomputer-implemented mapping service systems. For example, by generatinga plurality of scores for a point-of-interest based on one or more of aplurality of predefined features found in data for the point-of-interestand on a computer learning model, and selecting, based on the pluralityof scores, a primary point-of-interest to be included in a dataset forthe point-of-interest, systems and methods described herein may select acorrect and/or preferred primary point-of-interest type with improvedaccuracy compared to point-of-interest identification technologies usedin conventional computer-implemented mapping service systems.

An assigned primary point-of-interest type for a point-of-interest maybe utilized by a computer-implemented mapping service system to selectand provide an icon to represent the point-of-interest on a userinterface map. In an example, the icon may represent the assignedprimary point-of-interest type specifically. This way of utilizing adetermined and assigned primary point-of-interest type for apoint-of-interest may provide accuracy and/or reliability in visuallyindicating the primary point-of-interest type for a point-of-interest ona user interface map, which may allow different icons to be accuratelyand/or reliably used to specifically represent different primarypoint-of-interest types of points-of-interest on a user interface map.

Various embodiments will now be described in more detail with referenceto the figures. The disclosed systems and methods may provide one ormore of the benefits mentioned above and/or various additional and/oralternative benefits that will be made apparent herein.

FIG. 1 illustrates an exemplary point-of-interest identification system100 (“system 100”) configured to determine and assign a primarypoint-of-interest type for a point-of-interest. As shown, system 100 mayinclude, without limitation, a model training facility 102, a featuresfacility 104, a model prediction facility 106, a post-processingfacility 108, and a storage facility 110, selectively andcommunicatively coupled to one another. It will be recognized thatalthough facilities 102 through 110 are shown to be separate facilitiesin FIG. 1, facilities 102 through 110 may be combined into fewerfacilities, such as into a single facility, or divided into morefacilities as may serve a particular implementation. In some examples,facilities 102 through 110 may be distributed between multiple devicesand/or multiple locations as may serve a particular implementation.Additionally, one or more of facilities 102 through 110 may be omittedfrom system 100 in certain implementations, while additional facilitiesmay be included within system 100 in the same or other implementations.

Each of facilities 102 through 110 may include or be implemented bycomputing hardware and/or software components (e.g., processors,memories, communication interfaces, instructions stored in memory forexecution by the processors, etc.). The facilities may be implementedusing separate computing components unique to each facility, or may beimplemented using shared computing components.

The facilities of system 100 may perform one or more of the operationsdescribed herein to determine and assign a primary point-of-interesttype for a point-of-interest. For example, system 100 may access datafor a point-of-interest, generate a plurality of scores for thepoint-of-interest based on one or more of a plurality of predefinedfeatures found in the data, select a primary point-of-interest type forthe point-of-interest based on the scores for the point-of-interest, andinclude the selected primary point-of-interest type in a dataset for thepoint-of-interest.

In certain examples, system 100 may implement and use a machine learningmodel to generate scores for the point-of-interest based on one or moreof a plurality of predefined features found in data for thepoint-of-interest. For example, for a point-of-interest, system 100 maydetermine whether one or more of a plurality of predefined features arefound in the data for the point-of-interest. Based on the determination,system 100 may generate a data structure such as a vector for thepoint-of-interest. The vector may be generated to include valuesindicative of predefined features found in the data for thepoint-of-interest. System 100 may provide the vector as input to amachine learning model, such as a trained computer scoring model, whichmay be executed by system 100 to generate, based on the vector, aplurality of scores for the point-of-interest. System 100 may select,based on the scores for the point-of-interest, a primarypoint-of-interest type for the point-of-interest. System 100 may includethe primary point-of-interest type in a dataset for thepoint-of-interest.

Each of the facilities of system 100 and exemplary operations that maybe performed by the facilities of system 100 to determine and assign aprimary point-of-interest type to a point-of-interest will now bedescribed in more detail.

Storage facility 110 may store and maintain any data received,generated, managed, used, and/or transmitted by facilities 102 through108 as may serve a particular implementation. In some examples, forinstance, storage facility 110 may include data representative of acomputer scoring model 112, points-of-interest data 114, and featuresdata 116.

Computer scoring model 112 may include any type or implementation of amachine learning computer scoring model for scoring a point-of-interest.For instance, the computer scoring model may include a neural networkhaving an input layer, any suitable number of hidden layers, and anoutput layer. The neural network may be a convolutional neural network,a residual convolutional neural network, or any other suitable neuralnetwork. In other implementations, computer scoring model 112 mayinclude any other suitable machine learning model configured orconfigurable to score a point-of-interest.

Points-of-interest data 114 may include any data representing and/orotherwise associated with one or more points-of-interest. For example,points-of-interest data 114 may represent points-of-interest (e.g.,features of points-of-interest), data structures such as vectors thatare generated for points-of-interest, scores that are generated forpoints-of-interest, and/or primary point-of-interest types that aredetermined for points-of-interest. Examples of features ofpoints-of-interest may include, but are not limited to, standardindustry classification (SIC) codes, franchise codes, hours ofoperation, and contact names for the points-of-interest. In certainexamples, SIC codes may be numeric categories representative of items orservices provided at the points-of-interest. Similarly, franchise codesmay be numeric categories representative of known franchise names.Examples of primary point-of-interest types include, but are not limitedto, a bank, a grocery store, a gas station, a restaurant, a bar, adoctor office, a medical center, a vehicle repair shop, and a genericpoint-of-interest type. Additional examples of data for apoint-of-interest are described herein.

Features data 116 may include data representing a set of definedfeatures on which scoring of a point-of-interest may be based. Featuresdata 116 may represent the features and rules indicating how to use thefeatures to evaluate data for a point-of-interest. In certain examples,the features may be used by system 100 to evaluate data for apoint-of-interest and to generate a vector that represents theevaluations of the data for the point-of-interest. Examples of featuresand ways that features may be used by system 100 to score apoint-of-interest are described herein.

Model training facility 102 may be configured to train a computerscoring model, such as computer scoring model 112, to score data for apoint-of-interest. For example, model training facility 102 may executeone or more training sessions, of a training phase, to train a computerscoring model capable of machine learning. A training session may beperformed in any suitable way. For example, model training facility 102may submit one or more sets of training data representing testpoints-of-interest to the computer scoring model for supervised machinelearning by the computer scoring model, such that the computer scoringmodel learns to generate a plurality of scores based on data for apoint-of-interest. In certain examples, model training facility 102 maysubmit as training data, to the computer scoring model, a test vectorfor a test point-of-interest and an identification of a correct orpreferred primary point-of-interest type for the test point-of-interest.The computer scoring model may use the test vector and theidentification of the correct or preferred primary point-of-interesttype to learn how to weigh values in a vector to generate a highestscore (as compared to scores associated with other point-of-interesttypes) for the identified correct or preferred primary point-of-interesttype. In certain examples, each of the scores for a point-of-interestmay be associated with a different point-of-interest type and representa likelihood that the point-of-interest type is correct or preferred forthe point-of-interest as will be described in more detail herein.

Model training facility 102 may be configured to train a machinelearning computer scoring model in any suitable way. For example, modeltraining facility 102 may train the computer scoring model starting fromscratch using a test point-of-interest (e.g., test vector generated fromthe test point-of-interest) and a user selected correct or preferredprimary point-of-interest type, and/or may further train the computerscoring model using additional training data for testpoints-of-interest. An example of model training facility 102 training acomputer scoring model is described in more detail herein.

Features facility 104 may be configured to generate any suitable datastructure to indicate one or more features found in data for apoint-of-interest. In certain examples, features facility 104 may beconfigured to generate a vector data structure for thepoint-of-interest. Such a vector data structure may include a set ofvalues that are assigned by features facility 104 based on whether a setof predefined features are found in data for a point-of-interest. Toillustrate, features facility 104 may evaluate multiple features withrespect to data for a point-of-interest and assign various values in avector to represent evaluation results for the features.

In certain examples, based on accessed data for a point-of-interest,features facility 104 may create an instance of a vector data structureand assign values to the vector data structure (e.g., to fields of thevector data structure) based on evaluations that determine features thatare found in the accessed data for the point-of-interest. While anysuitable values may be assigned, in certain implementations, values of 0or 1 and/or values between 0 and 1 may be assigned to a vector.

Model prediction facility 106 may be configured to execute a runtimeoperation of a computer scoring model, such as computer scoring model112, to generate a plurality of scores for a point-of-interest. Forexample, model prediction facility 106 may submit a data structure, suchas a vector data structure generated by features facility 104, for apoint-of-interest to the computer scoring model, which may use the datastructure to generate scores for the point-of-interest.

The computer scoring model may generate the scores in any suitable way,using any suitable data for the point-of-interest as input to thecomputer scoring model. For example, data for the point-of-interestsubmitted to the computer scoring model may include a vector for thepoint-of-interest. The vector may include values generated, by apre-processing operation, based on various defined features found in thedata for the point-of-interest, as described herein. In other examples,the input to the computer scoring model may be in other suitable formsof data representative of the point-of-interest.

The computer scoring model may output scores for the point-of-interest.The output for a point-of-interest may be in any suitable form,including a data structure such as a vector. The vector may be generatedto include scores indicative of a likelihood that a respectivepoint-of-interest type is a correct or preferred point-of-interest typefor the point-of-interest. While any suitable scores may be generated bythe computer scoring model, in certain implementations, each of thescores may range between 0 and 1.

Post-processing facility 108 may be configured to perform one or moreoperations on the outputs of a computer scoring model in order to selecta primary point-of-interest type for the point-of-interest. For example,post-processing facility 108 may select a primary point-of-interest typefrom a plurality of point-of-interest types based on scores for apoint-of-interest. In certain examples, post-processing facility 108 mayrank the scores for the point-of-interest and select a primarypoint-of-interest type based the ranked scores. In an example, each ofthe plurality of scores may be located at a different position within avector generated by the computer scoring model, and each position withinthe vector may be associated with a different point-of-interest type. Inone example, post-processing facility 108 may determine a position of ahighest-ranked score within a vector of scores, and select, as a primarypoint-of-interest type, a point-of-interest type associated with theposition in the vector for the highest-ranked score. In another example,post-processing facility 108 may select, as a primary point-of-interesttype, a generic point-of-interest type if none of the scores generatedby the computer scoring mode are above a threshold score level. Inanother example, post-processing facility 108 may determine that ahighest-ranked score corresponds to a predefined feature that has beenflagged for generic-only categorization based on the highest-rankedscore being located at a flagged position within the vector of scores,and select, as a primary point-of-interest type, a genericpoint-of-interest type based on the highest-ranked score being locatedat the flagged position in the vector. Examples of post-processingfacility 108 selecting a primary point-of-interest type are described inmore detail herein.

Post-processing facility 108 may include a selected primarypoint-of-interest type for a point-of-interest in a dataset for thepoint-of-interest. The selected primary point-of-interest type may bestored in the dataset such that the primary point-of-interest type forthe point-of-interest, as well as other data for the point-of-interestin some examples, is accessible and useable by a suitablecomputer-implemented system and/or application, such as acomputer-implemented mapping service system. Exemplary features ofsystem 100 and/or operations that may be performed by system 100 willnow be described in more detail.

FIG. 2 illustrates an exemplary configuration 200 for training acomputer scoring model. As shown, a user 202 may provide, via a userinterface 204, training data 206 to model training facility 102, whichmay utilize the training data 206 to train a computer scoring model,such as computer scoring model 112 of FIG. 1, in any suitable manner.Specifically, model training facility 102 may use training data 206 totrain a computer scoring model to generate a plurality of scores for apoint-of-interest.

In one example, training data 206 may include any suitable datarepresentative of test point-of-interest. For example, the training data206 may include a test vector for the test point-of-interest, which mayindicate one or more features found in data for the testpoint-of-interest as will be described in more detail herein. Thetraining data 206 may also include an identification of a correct orpreferred primary point-of-interest type for the test point-of-interest.

In certain examples, prior to user 202 providing the training data 206to user interface 204, a test vector for the test point-of-interest maybe generated in any suitable manner, including user 202 creating thetest vector based on defined features. To illustrate, for a testpoint-of-interest, user 202 may evaluate defined features with respectto data for the point-of-interest. Based on the evaluations, user 202may assign values to a test vector, which values represent evaluationresults for the features (e.g., whether the features are found withindata for the test point-of-interest). In a similar but alternativemanner, features facility 104 may generate, from data for a testpoint-of-interest, the test vector for the training data 206. In anexample, a value in a test vector may be 0 or 1 depending on whether acorresponding feature is found within data for the testpoint-of-interest, such as a value of 1 if a feature is found or a valueof 0 if the feature is not found.

During a training phase, model training facility 102 may execute one ormore sessions to facilitate training of a computer scoring model basedon training data 206. In some examples, model training facility 102 mayaccess and use both the test vector and the identification of thecorrect or preferred primary point-of-interest type to train thecomputer scoring model to generate a plurality of scores for apoint-of-interest in any suitable way. For example, during the trainingphase, model training facility 102 may use any suitable machine learningtechnologies to perform operations to facilitate learning, by a computerscoring model, of how to weigh values within the test vector of thetraining data 206, such that a score for the correct or preferredprimary point-of-interest type (e.g., a score at a position of a vectorcorresponding to the correct or preferred primary point-of-interesttype) receives a highest score of all of the scores for thepoint-of-interest (e.g., a highest scores of all of the scores in thevector).

In certain examples, model training facility 102 may train the computerscoring model to score a point-of-interest as a genericpoint-of-interest type in any suitable way. For example, model trainingfacility 102 may access training data 206 including a genericpoint-of-interest type, as the identified correct point-of-interest typefor a test point-of-interest, and train the computer scoring model toweigh the values within the test vector, such that a score for thecorrect or preferred primary point-of-interest type (e.g., a score at aposition of a vector corresponding to the correct or preferred primarypoint-of-interest type) receives a highest score of all scores for thepoint-of-interest (e.g., a highest score of all of the scores in thevector.

In some examples, a level of difficulty to properly score data for apoint-of-interest may vary between training sessions. In one example,during one training session, model training facility 102 may receivetraining data 206 for a test point-of-interest that is easily scored sothat a point-of-interest type identified as a correct point-of-interesttype receives the highest score. In a different iteration of thetraining sessions, training data 206 may include a point-of-interestthat is difficult to properly score (e.g., an edge case). However, inboth of the training sessions above, model training facility 102 mayutilize the identification of a correct primary point-of-interest typeto facilitate learning, by the computer scoring model, how to properlyscore a point-of-interest so that a score associated with the identifiedcorrect primary point-of-interest type receives the highest score. Thus,model training facility 102 may utilize training data 206 with variouslevels of difficulty to train a computer scoring model.

Completion of a training phase, by model training facility 102, resultsin a trained computer scoring model 208 that is configured to generatescores for a point-of-interest. In one example, the trained computerscoring model 208 may be stored in a data store, such as storagefacility 110, and may be executed during runtime by any suitablecomputing component, including model prediction facility 106, to scoredata for a point-of-interest.

In certain examples, after completion of an initial training phase,which results in trained computer scoring model 208, user 202 mayinitiate (in model training facility 102) an additional training phasewith one or more training sessions so that a new point-of-interest typemay be added to trained computer scoring model 208. In an example,training data 206 may include data for a point-of-interest andidentification of a correct primary point-of-interest type (e.g., thenew point-of-interest type) for the point-of-interest. Multiple trainingsessions may be performed by model training facility 102 to facilitatetraining of the computer scoring model to properly scorepoints-of-interest (associated with the new point-of-interest type), sothat the new point-of-interest type is selected as the primarypoint-of-interest type.

Completion of this additional training phase, by model training facility102, results in trained computer scoring model 208 being configured togenerate scores for a point-of-interest with a new score (for the newpoint-of-interest type) included in the plurality of scores output fromthe trained computer scoring model 208.

FIG. 3 illustrates an exemplary configuration 300 in whichpoint-of-interest identification system 100 may operate to determine andassign a primary point-of-interest type for a point-of-interest. Forexample, as shown, point-of-interest identification system 100 mayaccess data 302 for a point-of-interest, determine a primarypoint-of-interest type for the point-of-interest, include the primarypoint-of-interest type in a dataset 304 for the point-of-interest, andstore the dataset 304 in a data store, such as points-of-interest datastore 306. A mapping service system 308 may access the dataset 304within the points-of-interest data store 306 and utilize the dataset 304to provide a representation of the point-of-interest to a user 310 via acomputing device 312 (“device 312”) and a network 314. As shown, mappingservice system 308 may be communicatively coupled with device 312 by wayof network 314. Mapping service system 308 and device 312 maycommunicate one with another by way of network 314.

Network 314 may include a wireless local area network (e.g., a Wi-Finetwork), a provider-specific wired or wireless network (e.g., a cableor satellite carrier network, a mobile telephone network, etc.), theInternet, a wide area network, a content delivery network, and/or anyother suitable network or networks. Accordingly, data may flow betweenmapping service system 308 and device 312 by way of network 314 usingany communication technologies, devices, media, and protocols as mayserve a particular implementation.

Device 312 may be implemented as any suitable computing device able tobe operated, by a user 310, to view a user interface map and/or searchresults provided by mapping service system 308. For example, device 312may be a mobile phone (e.g., a smartphone), a tablet device, a laptopcomputer, a personal computer, a wearable computing device, anavigational device, or the like configured to receive datarepresentative of a user interface map and/or search results provided bymapping service system 308 to device 312 via network 314.

In some examples, data 302 for a point-of-interest may include anysuitable data to represent the point-of-interest. For example, data 302may include any suitable number of features associated with thepoint-of-interest. As stated above, examples of such features mayinclude, but are not limited to, standard industry classification (SIC)codes, franchise codes, hours of operation, and a contact name for thepoint-of-interest. In certain examples, SIC codes may be numericcategories representative of items or services provided at thepoint-of-interest. Similarly, franchise codes may be numeric categoriesrepresentative of known franchise names. In some examples, additionaland/or alternative features (e.g., text representative of items providedat the point-of-interest, text representative of services provided atthe point-of-interest, etc.) may be included in data 302. In certainexamples, data 302 indicating multiple features enables thepoint-of-interest to be identified in more searches as compared to data302 that indicating only one or two features, but prevents a singlepoint-of-interest type from easily being determined.

One or more exemplary operations of point-of-interest identificationsystem 100 will now be described with respect to an exemplarypoint-of-interest named ‘Superstore’. Data 302 for the exemplarypoint-of-interest may indicate exemplary features (e.g., SIC codes,franchise codes, hours of operation, etc.) of the point-of-interest,including features such as a pharmacy, a florist, a meat market,furniture, groceries, a bank, and hours of operation from 7 am to 11 pmassociated with the point-of-interest.

Point-of-interest identification system 100 may determine and assign aprimary point-of-interest type based on data 302 for thepoint-of-interest in any suitable way. For example, point-of-interestidentification system 100 may determine a primary point-of-interest typeby performing one or more operations including, but not limited to,accessing data 302 representative of a point-of-interest, generating avector for the point-of-interest, scoring (e.g., generating multiplescores) the point-of-interest based on the vector for thepoint-of-interest, and selecting a primary point-of-interest type basedon the scores for the point-of-interest.

Point-of-interest identification system 100 may access data 302 for thepoint-of-interest in any suitable manner. For example, point-of-interestidentification system 100 may access data 302 for the point-of-interestby receiving data 302 from one or more sources such as one or more datastores.

Point-of-interest identification system 100 may utilize data 302 todetermine a primary point-of-interest type for the point-of-interest. Inone example, upon receiving data 302, point-of-interest identificationsystem 100 may perform one or more operations to generate, based on data302, a vector for the point-of-interest. For example, point-of-interestidentification system 100 may evaluate various features, such aspredefined features represented by features data 116, with respect todata 302 of the point-of-interest, and generate a vector for thepoint-of-interest based on the evaluations. In one example, a vector maybe generated to include multiple values, and each value may represent aresult of an evaluation of a different feature with respect to data 302for the point-of-interest as described herein.

An evaluation of a feature relative to data 302 for a point-of-interestmay be based on any suitable criteria including, but not limited to,whether a feature is found in data 302 for the point-of-interest. Tofacilitate evaluation of features relative to data 302, a set offeatures may be defined in advance of receipt of data 302 for apoint-of-interest such that the features are ready to be used by system100 to evaluate data 302 for the point-of-interest and to generate avector for the point-of-interest. Examples of features (that may beevaluated with respect to data 302 of a point-of-interest as describedherein) may include, but are not limited to, one or more SIC codes, suchas a SIC code for a gas station, a SIC code for a florist, a SIC codefor a pharmacy, a SIC code for beverages, a SIC code for groceries, aSIC code for a meat market, and one or more franchise codes, such as afranchise code for a franchise named STARBUCK'S and a franchise code fora franchise names MCDONALD'S. For purpose of describing certain examplesherein, these examples of features may be defined to be a set offeatures used to generate a vector for a point-of-interest. However,additional and/or alternative features (e.g., hours of operation end at5 pm, hours of operation end at 11 pm, hours of operation end at 2 am, atime range for hours of operation, inclusion of a contact name forpoint-of-interest, a keyword (e.g., church) in the name of thepoint-of-interest, etc.) may be included in a defined set of features insome examples, or may be utilized (e.g., as criteria to select betweentwo close scores) in one or more post-processing operations forselection of the primary point-of-interest type. Accordingly, a set ofdefined features may be defined to suit a particular implementation.

As mentioned above, based on the evaluation of the defined featuresrelative to data 302 for a point-of-interest, point-of-interestidentification system 100 may generate a vector that includes values of0 or 1. In certain examples, a vector may include any suitable number ofvalues, such as the same number as the number of features evaluated(e.g., each value may represent a result of an evaluation of acorresponding feature). Additionally, the values in a vector may be inany suitable order. In certain examples, each vector generated for adifferent point-of-interest includes a same number and arrangement ofvalue fields such that a value for an evaluation of a particular featureis located at the same position in each of the vectors.

An example of point-of-interest identification system 100 generating avector based on data 302 for a point-of-interest will now be described.Continuing with ‘Superstore’ as an exemplary point-of-interest, data 302may indicate exemplary features (e.g., SIC codes, franchise codes, hoursof operation, etc.) of a pharmacy, a florist, a meat market, furniture,groceries, a bank, and hours of operation from 7 am to 11 pm associatedwith the point-of-interest.

Based on the exemplary set of defined features described above, forexample, point-of-interest identification system 100 may assign a valueof ‘0’ in a first position of the vector based on feature ‘SIC coderepresentative of a gas station’ not being found in the data 302 for theexemplary point-of-interest ‘Superstore’. Point-of-interestidentification system 100 may evaluate all features with respect to data302 in a similar manner, until values for all features are assigned to avector. For example, a generated vector (e.g., vector 406 in FIG. 4) forthe exemplary point-of-interest ‘Superstore’ based on data 302 may be‘0,1,1,1,1,1,0,1,1,0,0, . . . ’ based on the evaluation of the abovepredefined features (and any other suitable features) with respect todata 302 for the exemplary point-of-interest ‘Superstore’. In certainexamples, the vector 406 generated based on the predefined features anddata 302 for the exemplary point-of-interest ‘Superstore’ may beutilized by point-of-interest identification system 100 to generatescores for the exemplary point-of-interest, as will be described withreference to FIG. 4.

FIG. 4 illustrates a trained neural network 400 that receives input 402at an input layer, performs one or more operations on input 402 at anysuitable number of hidden layers, and provides output 404 at an outputlayer.

In one example, trained neural network 400 may receive vector 406 forthe point-of-interest as input 402. Trained neural network 400 maygenerate various scores 408 (as output 404) for the point-of-interestbased on the vector 406 in any suitable way. For example, a plurality ofscores 408 may be generated based on any combination of the valueswithin vector 406. In an example, trained neural network 400 maygenerate a data structure, such as a vector of scores 408 of ‘0.83, 0.2,0, 0.65, 0.33, . . . ’ for the exemplary point-of-interest ‘Superstore’based on the values ‘0,1,1,1,1,1,0,1,1,0,0, . . . ’ of vector 406. Asmentioned above, each of the scores in the vector of scores 408 for thepoint-of-interest may represent a likelihood (e.g., a percentage) that acorresponding point-of-interest type is a correct or preferred primarypoint-of-interest type for the point-of-interest, and each of the scores408 may range from 0 to 1.

In one example, trained neural network 400 may add a weighting factor toeach of the values in vector 406. Based on the weighting factors of thevalues, trained neural network 400 may generate each of the scores 408for the point-of-interest. In certain examples, the weights applied toeach of the values may vary (e.g., between vectors for differentpoints-of-interest) depending on all values in the vector 406, andtrained neural network 400 may generate different scores 408 based onthe different weights. Thus, based on the weighted values within thevector 406, trained neural network 400 may generate various scores 408for a point-of-interest. These generated scores 408 may then be providedas output 404 from trained neural network 400.

Returning to FIG. 3, point-of-interest identification system 100 mayperform one or more operations based on the scores 408 for apoint-of-interest to select a primary point-of-interest type for thepoint-of-interest. In one example, point-of-interest identificationsystem 100 may rank the scores 408 in any suitable way, such as fromhighest to lowest.

Based on the ranking, point-of-interest identification system 100 mayselect a primary point-of-interest type for a point-of-interest in anysuitable way. In one example, point-of-interest identification system100 may determine a position of a highest-ranked score within the vectorof scores, and select, as a primary point-of-interest type for thepoint-of-interest, a point-of-interest type associated with the positionin the vector for the highest-ranked score (that is also above athreshold score level). In another example, point-of-interestidentification system 100 may determine that none of the scores 408satisfy a minimum threshold score level, and based on thisdetermination, select a generic point-of-interest type as the primarypoint-of-interest type for the point-of-interest. In another example,point-of-interest identification system 100 may determine that thehighest-ranked score of the scores 408 corresponds to a position in avector for a predefined feature that has been flagged for generic-onlycategorization based on the highest-ranked score being located at aflagged position within the vector of scores, and select as a primarypoint-of-interest type for the point-of-interest, a genericpoint-of-interest type based on the highest-ranked score being locatedat the flagged position within the vector.

Point-of-interest identification system 100 may perform one or moreoperations based on the selection of the primary point-of-interest type.For example, point-of-interest identification system 100 may assign theselected point-of-interest type to the point-of-interest in any suitableway. For instance, point-of-interest identification system 100 mayperform the assignment by including the selected primarypoint-of-interest type in a dataset 304 for the point-of-interest andstoring the dataset 304 in a data store, such as a points-of-interestdata store 306.

As mentioned above, in certain examples, datasets for differentpoints-of-interest, such as dataset 304, may be accessed by mappingservice system 308. In such examples, mapping service system 308 mayperform one or more operations to provide a user interface map thatincludes one or more icons that are displayed based the accesseddatasets from points-of-interest data store 306, as will be describedwith reference to FIG. 5.

FIG. 5 shows an exemplary user interface map 500 that may be provided bymapping service system 308 for display. As shown, user interface map 500may include multiple icons 502. Icons 502 may be selected, by mappingservice system 308, for display in user interface map 500, based ondatasets in points-of-interest data store 306. For instance, mappingservice system 308 may select icons 502 for display based on theselected primary points-of-interest types assigned to points-of-interestrepresented in points-of-interest data store 306. In FIG. 5, forexample, each of icons 502-1 may represent a point-of-interest assigneda restaurant type as its primary point-of-interest type, each of icons502-2 may represent a point-of-interest assigned a bank type as itsprimary point-of-interest type, each of icons 502-3 may represent apoint-of-interest assigned a gas station type as its primarypoint-of-interest type, each of icons 502-4 may represent apoint-of-interest assigned a grocery store type as its primarypoint-of-interest type, and each of icons 502-5 may represent apoint-of-interest assigned a generic type as its primarypoint-of-interest type.

In certain examples, icons 502 may include any suitable graphicalrepresentation of the associated primary point-of-interest type. Forexample, as shown in FIG. 5, icon 502-1 may include a fork and knife toillustrate a restaurant type, which is the point-of-interest typeassociated with icon 502-1. Icon 502-2 may include a dollar sign toillustrate a bank type, which is the point-of-interest type associatedwith icon 502-2. Icon 502-3 may include a gas pump to illustrate a gasstation type, which is the point-of-interest type associated with icon502-3. Icon 502-4 may include a ‘G’ to illustrate a grocery store type,which is the point-of-interest type associated with icon 502-4. Icon502-5 may include a black circle to illustrate a genericpoint-of-interest type, which is the point-of-interest type associatedwith icon 502-5.

In certain examples, icons 502 representing point-of-interest typeswithin similar categories (e.g., bars and restaurants, or doctor officeand medical facility) may have any number of common characteristics,such as one or more shared visual characteristics. For example, icons502 that represent similar categories may have the same colorbackground, such that user 310 may recognize, from icons 502,points-of-interest that have common categories of items and/or services.

Returning to FIG. 3, mapping service system 308 may provide userinterface map 500 with icons 502 to device 312 via network 314. Device312 may receive user interface map 500 from mapping service system 308and provide user interface map 500 to user 310 in any suitable way. Forexample, device 312 may display user interface map 500 on a userinterface (e.g., a display screen).

In certain examples, mapping service system 308 may change icons 502 onuser interface map 500 in any suitable manner as user 310 browses theuser interface map 500 (e.g., as user 310 changes the view to include adifferent area of user interface map 500, such as by panning or zoomingin on or out from user interface map 500). For example, mapping servicesystem 308 may determine points-of-interest located within a new area ofuser interface map 500, access datasets for points-of-interest withinthe new area (from points-of-interest data store 306), select orgenerate the corresponding icons 502 based on primary point-of-interesttypes assigned in the datasets, and provide user interface map 500 withthe corresponding icons 502 to device 312.

In certain examples, mapping service system 308 may utilize the primarypoint-of-interest type assigned to a point-of-interest in any othersuitable manner. For example, mapping service system 308 may utilize aprimary point-of-interest type to generate or adjust search results tobe provided to device 312. To illustrate, mapping service system 308 mayreceive a search query from device 312, perform a search, and includedifferent points-of-interest in search results for the search query.Prior to returning the search results, mapping service system 308 mayaccess datasets for points-of-interest stored in points-of-interest datastore 306 to determine which, if any, points-of-interest in the searchresults include an assigned primary point-of-interest type. Mappingservice system 308 may, based on an assigned primary point-of-interesttype being included within a dataset for a point-of-interest, adjust thesearch results in any suitable manner. For example, if the search querywas for grocery stores and the dataset 304 for exemplarypoint-of-interest ‘Superstore’ included grocery store as the primarypoint-of-interest, mapping service system 308 may move exemplarypoint-of-interest ‘Superstore’ up in relevancy rankings of the searchresults provided to device 312.

The examples of operations performed by point-of-interest identificationsystem 100 and facilities or components within point-of-interestidentification system 100 to determine and assign a primarypoint-of-interest type for a point-of-interest are illustrative andother exemplary operations may be performed and other exemplaryconfigurations may exist without varying from the scope of thedisclosure. For example, the trained neural network 400 may be dividedinto any suitable number of trained neural networks. In one example, forinstance, each trained neural network may be trained to generate a scorefor a respective point-of-interest type. In certain examples, eachtrained neural network may receive the same vector 406 for apoint-of-interest as input 402, process the values included in vector406 in one or more hidden layers, and provide a single score 408(representative of point-of-interest type associated with the trainedneural network) for the point-of-interest as output 404. In thisexample, point-of-interest identification system 100 may perform one ormore operations on the scores output from the multiple trained neuralnetworks to select a primary point-of-interest type for thepoint-of-interest as described herein.

FIG. 6 illustrates an exemplary method 600 for determining and assigninga primary point-of-interest type for a point-of-interest. While FIG. 6illustrates exemplary operations according to one embodiment, otherembodiments may omit, add to, reorder, and/or modify any of theoperations shown in FIG. 6. One or more of the operations shown in FIG.6 may be performed by system 100, any components included therein,and/or any implementation thereof.

In operation 602, data for a point-of-interest is accessed. Operation602 may be performed in any of the ways described herein.

In operation 604, a plurality of scores for the point-of-interest aregenerated. Operation 604 may be performed in any of the ways describedherein. In one example, a point-of-interest identification system maygenerate the plurality of scores for a point-of-interest based on one ormore of a plurality of predefined features found in the dataset for thepoint-of-interest. For example, the point-of-interest identificationsystem may generate the plurality of scores based on a weightedcombination of values (e.g., values based on the predefined features)within a vector for the point-of-interest.

In operation 606, a primary point-of-interest type for thepoint-of-interest is selected. Operation 606 may be performed in any ofthe ways described herein. In one example, the point-of-interestidentification system may select the primary point-of-interest typebased on the plurality of scores for the point-of-interest. For example,the point-of-interest identification system may select a primarypoint-of-interest type associated with a highest score of the pluralityof scores.

In operation 608, the selected primary point-of-interest type for thepoint-of-interest is included in a dataset for the point-of-interest.Operation 608 may be performed in any of the ways described herein.

In certain embodiments, one or more of the systems, components, and/orprocesses described herein may be implemented and/or performed by one ormore appropriately configured computing devices. To this end, one ormore of the systems and/or components described above may include or beimplemented by any computer hardware and/or computer-implementedinstructions (e.g., software) embodied on at least one non-transitorycomputer-readable medium configured to perform one or more of theprocesses described herein. In particular, system components may beimplemented on one physical computing device or may be implemented onmore than one physical computing device. Accordingly, system componentsmay include any number of computing devices, and may employ any of anumber of computer operating systems.

In certain embodiments, one or more of the processes described hereinmay be implemented at least in part as instructions embodied in anon-transitory computer-readable medium and executable by one or morecomputing devices. In general, a processor (e.g., a microprocessor)receives instructions, from a non-transitory computer-readable medium,(e.g., a memory, etc.), and executes those instructions, therebyperforming one or more processes, including one or more of the processesdescribed herein. Such instructions may be stored and/or transmittedusing any of a variety of known computer-readable media.

A computer-readable medium (also referred to as a processor-readablemedium) includes any non-transitory medium that participates inproviding data (e.g., instructions) that may be read by a computer(e.g., by a processor of a computer). Such a medium may take many forms,including, but not limited to, non-volatile media, and/or volatilemedia. Non-volatile media may include, for example, optical or magneticdisks and other persistent memory. Volatile media may include, forexample, dynamic random access memory (“DRAM”), which typicallyconstitutes a main memory. Common forms of computer-readable mediainclude, for example, a disk, hard disk, magnetic tape, any othermagnetic medium, a compact disc read-only memory (“CD-ROM”), a digitalvideo disc (“DVD”), any other optical medium, random access memory(“RAM”), programmable read-only memory (“PROM”), electrically erasableprogrammable read-only memory (“EPROM”), FLASH-EEPROM, any other memorychip or cartridge, or any other tangible medium from which a computermay read.

FIG. 7 illustrates an exemplary computing device 700 that may bespecifically configured to perform one or more of the processesdescribed herein. As shown in FIG. 7, computing device 700 may include acommunication interface 702, a processor 704, a storage device 706, andan input/output (“I/O”) module 708 communicatively connected via acommunication infrastructure 710. While an exemplary computing device700 is shown in FIG. 7, the components illustrated in FIG. 7 are notintended to be limiting. Additional or alternative components may beused in other embodiments. Components of computing device 700 shown inFIG. 7 will now be described in additional detail.

Communication interface 702 may be configured to communicate with one ormore computing devices. Examples of communication interface 702 include,without limitation, a wired network interface (such as a networkinterface card), a wireless network interface (such as a wirelessnetwork interface card), a modem, an audio/video connection, and anyother suitable interface.

Processor 704 generally represents any type or form of processing unitcapable of processing data or interpreting, executing, and/or directingexecution of one or more of the instructions, processes, and/oroperations described herein. Processor 704 may direct execution ofoperations in accordance with one or more applications 712 or othercomputer-executable instructions such as may be stored in storage device706 or another computer-readable medium.

Storage device 706 may include one or more data storage media, devices,or configurations and may employ any type, form, and combination of datastorage media and/or device. For example, storage device 706 mayinclude, but is not limited to, a hard drive, network drive, flashdrive, magnetic disc, optical disc, RAM, dynamic RAM, other non-volatileand/or volatile data storage units, or a combination or sub-combinationthereof. Electronic data, including data described herein, may betemporarily and/or permanently stored in storage device 706. Forexample, data representative of one or more executable applications 712configured to direct processor 704 to perform any of the operationsdescribed herein may be stored within storage device 706. In someexamples, data may be arranged in one or more databases residing withinstorage device 706.

I/O module 708 may include one or more I/O modules configured to receiveuser input and provide user output. One or more I/O modules may be usedto receive input for a single virtual experience. I/O module 708 mayinclude any hardware, firmware, software, or combination thereofsupportive of input and output capabilities. For example, I/O module 708may include hardware and/or software for capturing user input,including, but not limited to, a keyboard or keypad, a touchscreencomponent (e.g., touchscreen display), a receiver (e.g., an RF orinfrared receiver), motion sensors, and/or one or more input buttons.

I/O module 708 may include one or more devices for presenting output toa user, including, but not limited to, a graphics engine, a display(e.g., a display screen), one or more output drivers (e.g., displaydrivers), one or more audio speakers, and one or more audio drivers. Incertain embodiments, I/O module 708 is configured to provide graphicaldata to a display for presentation to a user. The graphical data may berepresentative of one or more graphical user interfaces and/or any othergraphical content as may serve a particular implementation.

In some examples, any of the facilities described herein may beimplemented by or within one or more components of computing device 700.For example, one or more applications 712 residing within storage device706 may be configured to direct processor 704 to perform one or moreprocesses or functions associated with facilities 102 through 108 ofsystem 100. Likewise, storage facility 110 of system 100 may beimplemented by or within storage device 706.

To the extent the aforementioned embodiments collect, store, and/oremploy personal information provided by individuals, it should beunderstood that such information shall be used in accordance with allapplicable laws concerning protection of personal information.Additionally, the collection, storage, and use of such information maybe subject to consent of the individual to such activity, for example,through well known “opt-in” or “opt-out” processes as may be appropriatefor the situation and type of information. Storage and use of personalinformation may be in an appropriately secure manner reflective of thetype of information, for example, through various encryption andanonymization techniques for particularly sensitive information.

In the preceding description, various exemplary embodiments have beendescribed with reference to the accompanying drawings. It will, however,be evident that various modifications and changes may be made thereto,and additional embodiments may be implemented, without departing fromthe scope of the invention as set forth in the claims that follow. Forexample, certain features of one embodiment described herein may becombined with or substituted for features of another embodimentdescribed herein. The description and drawings are accordingly to beregarded in an illustrative rather than a restrictive sense.

What is claimed is:
 1. A method comprising: accessing, by apoint-of-interest identification system, data for a point-of-interest;generating, by the point-of-interest identification system, a pluralityof scores for the point-of-interest based on one or more of a pluralityof predefined features found in the data for the point-of-interest andon a machine learning model, the plurality of scores represented in adata structure in which each score included in the plurality of scoresis located at a different position and each position within the datastructure is associated with a different point-of-interest type;selecting, by the point-of-interest identification system based on theplurality of scores, a primary point-of-interest type for thepoint-of-interest, the selecting of the primary point-of-interest typefor the point-of-interest comprising: determining, by thepoint-of-interest identification system, that none of the plurality ofscores satisfy a threshold score level; and selecting, by thepoint-of-interest identification system based on none of the pluralityof scores satisfying the threshold score level, a genericpoint-of-interest type as the primary point-of-interest type for thepoint-of-interest; including, by the point-of-interest identificationsystem, the selected primary point-of- interest type in a dataset forthe point-of-interest; selecting, by a computer-implemented mappingservice system based on the selected primary point-of-interest type, anicon for the point-of-interest; and providing, by thecomputer-implemented mapping service system, the selected icon for thepoint-of-interest for display on a user interface map.
 2. The method ofclaim 1, wherein: the data structure is a vector; and the generating ofthe plurality of scores for the point-of-interest comprises submittingan input vector for the point-of-interest as input to a trained neuralnetwork that outputs the plurality of scores for the point-of-interestrepresented in the vector, wherein the input vector includes a pluralityof values, each value determined based on whether a respective one ofthe plurality of predefined features is found in the data for thepoint-of-interest.
 3. The method of claim 1, wherein each of theplurality of point-of-interest types is associated with a differenticon.
 4. The method of claim 1, further comprising: during a trainingphase of the point-of-interest identification system receiving, by thepoint-of-interest identification system, a test vector for a testpoint-of-interest, the test vector including a plurality of values, eachvalue determined based on whether a respective one of the plurality ofpredefined features is found in test data for the testpoint-of-interest; receiving, by the point-of-interest identificationsystem, an identification of a point-of-interest type for the testpoint-of-interest; and training, by the point-of-interest identificationsystem, a computer scoring model based on the test vector for the testpoint-of-interest and the identification of the point-on-interest typefor the test point-of-interest.
 5. The method of claim 1, furthercomprising: accessing, by the point-of-interest identification system,additional data for an additional point-of-interest; generating, by thepoint-of-interest identification system, an additional plurality ofscores for the additional point-of-interest based on one or more of anadditional plurality of predefined features found in the additional datafor the additional point-of-interest and on the machine learning model,the additional plurality of scores represented in an additional datastructure; selecting, by the point-of-interest identification systembased on the additional plurality of scores, an additional primarypoint-of-interest type for the additional point-of-interest; andincluding, by the point-of-interest identification system, the selectedadditional primary point-of-interest type in an additional dataset forthe additional point-of-interest.
 6. The method of claim 5, wherein: theadditional data structure is a vector; and the selecting of theadditional primary point-of-interest type for the additionalpoint-of-interest comprises: determining, by the point-of-interestidentification system, a position within the vector for a highest-rankedscore of the additional plurality of scores; and selecting, by thepoint-of-interest identification system based on the position within thevector for the highest-ranked score, a point-of-interest type as theadditional primary point-of-interest type, wherein the point-of-interesttype is associated with the position within the vector for thehighest-ranked score.
 7. The method of claim 5, wherein: the additionaldata structure is a vector; and the selecting of the additional primarypoint-of-interest type for the additional point-of-interest comprises:determining, by the point-of-interest identification system, that ahighest-ranked score of the additional plurality of scores is located ata flagged position within the vector of the additional plurality ofscores; and selecting, by the point-of-interest identification systembased on the highest-ranked score of the additional plurality of scoresbeing located at the flagged position within the vector, the genericpoint-of-interest type as the additional primary point-of-interest typefor the additional point-of-interest.
 8. A system comprising: at leastone physical computing device configured to: access data for apoint-of-interest; generate a plurality of scores for thepoint-of-interest based on one or more of a plurality of predefinedfeatures found in the data for the point-of-interest and on a machinelearning model, the plurality of scores represented in a data structurein which each score included in the plurality of scores is located at adifferent position and each position within the data structure isassociated with a different point-of-interest type; select, based on theplurality of scores, a primary point-of-interest type for thepoint-of-interest, the selecting of the primary point-of-interest typefor the point-of-interest comprising: determining that none of theplurality of scores satisfy a threshold score level; and selecting,based on none of the plurality of scores satisfying the threshold scorelevel, a generic point-of-interest type as the primary point-of-interesttype for the point-of- interest; include the selected primarypoint-of-interest type in a dataset for the point-of-interest; select,based on the selected primary point-of-interest type, an icon for thepoint-of-interest; and provide the selected icon for thepoint-of-interest for display on a user interface map.
 9. The system ofclaim 8, wherein: the data structure is a vector; and the generation ofthe plurality of scores for the point-of-interest comprises submittingan input vector for the point-of-interest as input to a trained neuralnetwork that outputs the plurality of scores for the point-of-interestrepresented in the vector, wherein the input vector includes a pluralityof values, each value determined based on whether a respective one ofthe plurality of predefined features is found in the data for thepoint-of-interest.
 10. The system of claim 8, wherein each of theplurality of point-of-interest types is associated with a differenticon.
 11. The system of claim 8, wherein, during a training phase of thesystem, the at least one physical computing device is further configuredto: receive a test vector for a test point-of-interest, the test vectorincluding a plurality of values, each value determined based on whethera respective one of the plurality of predefined features is found intest data for the test point-of-interest; receive an identification of apoint-of-interest type for the test point-of-interest; and train acomputer scoring model based on the test vector for the testpoint-of-interest and the identification of the point-on-interest typefor the test point-of-interest.
 12. The system of claim 8, wherein theat least one physical computing device is further configured to: accessadditional data for an additional point-of-interest; generate anadditional plurality of scores for the additional point-of-interestbased on one or more of an additional plurality of predefined featuresfound in the additional data for the additional point-of-interest and onthe machine learning model, the additional plurality of scoresrepresented in an additional data structure; select, based on theadditional plurality of scores, an additional primary point-of-interesttype for the additional point-of-interest; and include the selectedadditional primary point-of-interest type in an additional dataset forthe additional point-of-interest.
 13. The system of claim 12, wherein:the additional data structure is a vector; and the selection of theadditional primary point-of-interest type for the additionalpoint-of-interest comprises: determining a position within the vectorfor a highest-ranked score of the additional plurality of scores; andselecting, based on the position within the vector for thehighest-ranked score, a point-of-interest type as the additional primarypoint-of-interest type, wherein the point-of-interest type is associatedwith the position within the vector for the highest-ranked score. 14.The system of claim 12, wherein: the additional data structure is avector; and the selection of the additional primary point-of-interesttype for the additional point-of-interest comprises: determining that ahighest-ranked score of the additional plurality of scores is located ata flagged position within the vector of the additional plurality ofscores; and selecting, based on the highest-ranked score of theadditional plurality of scores being located at the flagged positionwithin the vector, the generic point-of-interest type as the additionalprimary point-of-interest type for the additional point-of-interest. 15.A non-transitory computer-readable medium storing instructions that,when executed, direct at least one processor of a computing device to:access data for a point-of-interest; generate a plurality of scores forthe point-of-interest based on one or more of a plurality of predefinedfeatures found in the data for the point-of-interest and on a machinelearning model, the plurality of scores represented in a data structurein which each score included in the plurality of scores is located at adifferent position and each position within the data structure isassociated with a different point-of-interest type; select, based on theplurality of scores, a primary point-of-interest type for thepoint-of-interest, the selecting of the primary point-of-interest typefor the point-of-interest comprising: determining that none of theplurality of scores satisfy a threshold score level; and selecting,based on none of the plurality of scores satisfying the threshold scorelevel, a generic point-of-interest type as the primary point-of-interesttype for the point-of-interest; include the selected primarypoint-of-interest type in a dataset for the point-of-interest; select,based on the selected primary point-of-interest type, an icon for thepoint-of-interest; and provide the selected icon for thepoint-of-interest for display on a user interface map.
 16. Thecomputer-readable medium of claim 15, wherein: the data structure is avector; and the generation of the plurality of scores for thepoint-of-interest comprises submitting an input vector for thepoint-of-interest as input to a trained neural network that outputs theplurality of scores for the point-of-interest represented in the vector,wherein the input vector includes a plurality of values, each valuedetermined based on whether a respective one of the plurality ofpredefined features is found in the data for the point-of-interest. 17.The computer-readable medium of claim 15, wherein, during a trainingphase of a system, the instructions, when executed, direct the at leastone processor of the computing device to: receive a test vector for atest point-of-interest, the test vector including a plurality of values,each value determined based on whether a respective one of the pluralityof predefined features is found in test data for the testpoint-of-interest; receive an identification of a point-of-interest typefor the test point-of-interest; and train a computer scoring model basedon the test vector for the test point-of-interest and the identificationof the point-on-interest type for the test point-of-interest.
 18. Thecomputer-readable medium of claim 15, wherein the instructions, whenexecuted, further direct the at least one processor of the computingdevice to: access additional data for an additional point-of-interest;generate an additional plurality of scores for the additionalpoint-of-interest based on one or more of an additional plurality ofpredefined features found in the additional data for the additionalpoint-of-interest and on the machine learning model, the additionalplurality of scores represented in an additional data structure; select,based on the additional plurality of scores, an additional primarypoint-of-interest type for the additional point-of-interest; and includethe selected additional primary point-of-interest type in an additionaldataset for the additional point-of-interest.
 19. The computer-readablemedium of claim 18, wherein: the additional data structure is a vector;and the selection of the additional primary point-of-interest type forthe additional point-of-interest comprises: determining a positionwithin the vector for a highest-ranked score of the additional pluralityof scores; and selecting, based on the position within the vector forthe highest-ranked score, a point-of-interest type as the additionalprimary point-of-interest type, wherein the point-of-interest type isassociated with the position within the vector for the highest-rankedscore.
 20. The computer-readable medium of claim 18, wherein: theadditional data structure is a vector; and the selection of theadditional primary point-of-interest type for the additionalpoint-of-interest comprises: determining that a highest-ranked score ofthe additional plurality of scores is located at a flagged positionwithin the vector of the additional plurality of scores; and selecting,based on the highest-ranked score of the additional plurality of scoresbeing located at the flagged position within the vector, the genericpoint-of-interest type as the additional primary point-of-interest typefor the additional point-of-interest.